package com.project.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.project.bean.UserBean;
import org.apache.ibatis.annotations.Update;

public interface IUserService {
    /**
     * 根据输入的用户账号和密码，登录用户。同时查询该用户的权限信息。登录成功后，记录登陆日志
     * @param account   账号
     * @param password  密码
     * @return 登陆用户对象 / null
     */
    public UserBean login (String account,String password);

    /**
     * 分页冬天条件查询
     * @param pageNO 页码
     * @param name 姓名
     * @return 分页员工对象
     */
    public IPage<UserBean> cutByItem (Integer pageNO,String name );

    /**
     * 删除用户
     * @param Id 用户id
     */
    public void  del(Integer Id);

    /**
     *  根据用户id，查询用户信息，同时查询用户拥有的角色，以及用户拥有的权限。
     * @param id 用户id
     * @return 用户对象
     */
    public UserBean findById(Integer id);

    /**
     *  更新用户角色
     * @param id 用户 id，
     * @param arr 用户角色数组
     */
    public void update  (Integer id,Integer[] arr);

    /**
     * 添加用户
     * @param userBean 用户对象
     * @param arr 用户角色数组
     */
    public void add (UserBean userBean,Integer [] arr);


    /**
     * 修改密码
     * @param  id 用户id
     * @param password 用户新密码
     */
    public  void changePWD (Integer id,String password);
}
